#ifndef _WORK_MODE_SWITCH_H_
#define _WORK_MODE_SWITCH_H_

#include "config.h"
#include "main.h"
#include "FM_API.h"
#include "device.h"
#include "detect.h"
#include  "iic.h"

#ifdef  LINE_MOD_BEFER_FM
typedef enum{
	USB_DEV,
	SD_DEV,
	#ifndef NOT_USE_LINE_IN_FUNC
	AUX_DEV,
	#endif
	#ifdef IPONE_DOCK_FUNC_ENABLE
	 IPHONE_DEV,
	 #endif
	#ifdef BLUETOOTH_FUNC_ENABLE
	BLUETOOTH_DEV,
	#endif
    	FM_DEV,
	#ifdef  USE_RTC_FUNCTION
	RTC_DEV,
	#endif
        #ifdef  FLASH_MUSIC_MOD_EN
    	FLASH_DEV,
        #endif        
	USB_DEVICE,
	IDLE,
}DEV_ON_LIST;
#else
typedef enum{
	USB_DEV,
	SD_DEV,
	FM_DEV,
	#ifndef NOT_USE_LINE_IN_FUNC
	AUX_DEV,
	#endif
	#ifdef IPONE_DOCK_FUNC_ENABLE
	 IPHONE_DEV,
	 #endif
	#ifdef BLUETOOTH_FUNC_ENABLE
	BLUETOOTH_DEV,
	#endif
	#ifdef  USE_RTC_FUNCTION
	RTC_DEV,
	#endif
        #ifdef  FLASH_MUSIC_MOD_EN
    	FLASH_DEV,
        #endif        
	USB_DEVICE,
	IDLE,
}DEV_ON_LIST;
#endif

void Init_Func_List(void);	
void Set_Curr_Func(u8 curr_mod);
void Remov_Func_From_List(DEV_ON_LIST Dev);
void Add_Func_To_List(DEV_ON_LIST Dev);
u8  Next_Func(void);

#endif
